Build UStar archives by default
authorAlex Crichton <alex@alexcrichton.com>
Fri, 29 Jan 2016 04:07:56 +0000 (20:07 -0800)
committerAlex Crichton <alex@alexcrichton.com>
Fri, 29 Jan 2016 04:07:56 +0000 (20:07 -0800)
commit5c0c21322c611a39b98c99bd8207cccc246917a0
tree2767bf366150ba3e6ec438808412021a1e82b4c7
parentf10453840779df28a2c289a48e43039f74540ef8
Build UStar archives by default

The tar::Builder type by default will build GNU archives, but
unfortunately we force it here to use UStar archives instead. The
UStar format has more limitations on the length of path name that it
can encode, so it's not quite as nice to use.

Older cargos, however, had a bug where GNU archives were interpreted
as UStar archives. This bug means that if we publish a GNU archive
which has fully filled out metadata it'll be corrupt when unpacked by
older cargos.

Hopefully in the future after enough cargos have been running around
with the bugfixed tar-rs library we'll be able to switch this over to
GNU archives, but for now we'll just say that you can't encode paths
in archives that are *too* long.

Closes #2326
src/cargo/ops/cargo_package.rs